package ufpb.engsoft.testesUnidade;

import static org.junit.Assert.*;

import org.junit.Test;
import ufpb.engsoft.excecoes.NaoPodeCadastrarException;
import ufpb.engsoft.dominio.*;

/**
 * Testes da classe GerenciaSala
 * @author Fred Augusto de M. Farias, fredjampa@gmail.com
 *
 */

public class GerenciaLaboratorioTest {
	
	@Test public void cadastrarTeste() throws NaoPodeCadastrarException{
		 GerenciaLaboratorio.cadastrar("Lab 1", 45);
		 GerenciaLaboratorio.cadastrar("lab 2", 25);
		 
		 assertEquals(GerenciaLaboratorio.qtdCadastros(), 2);
		 GerenciaLaboratorio.listar();
	 }
	
	 @Test public void editarTeste() throws NaoPodeCadastrarException{
		 assertTrue(GerenciaLaboratorio.editar(2, "lab 2", "Lab 3", 50));
		 assertFalse(GerenciaLaboratorio.editar(1, "LAb 4", "Lab 5", 69));
	 }
	 
	 @Test public void buscaLaboratorioTeste(){
		 Laboratorio lab = GerenciaLaboratorio.buscaLaboratorioPorNome(1,"Lab 1");
		 Laboratorio lab1 = GerenciaLaboratorio.buscaLaboratorioPorNome(2, "Lab 4");
		 assertEquals(lab.getNome(),"Lab 1");
		 assertNull(lab1);
	 }
	 @Test public void excluir(){
		 assertTrue(GerenciaLaboratorio.excluir(1, "Lab 1"));
		 assertEquals(GerenciaLaboratorio.qtdCadastros(),1);
	 }
}